해킹 공격과 포렌식

2020-07-04
  • 웹서버 데몬 : 아파치 등
  • 로깅 시 풀 패킷 저장하지 않음

    • 보안 룰 등에 맞춰 일부만 저장
  • 네트워크에서 로깅을 할 경우 상위계층 정보는 열어볼 수 없어 알 수 없음

    • e.g. 방화벽은 port주소까지 볼 수 있지만 응용 계층 정보를 볼 수 없음
  • 해커 컴퓨터 압수 시

    • 웹 브라우저 로그 확인(시크릿 모드 시 할 수 있는 것 없음)
    • 피들러 등 도구 사용(도구 기록 확인, 기록 저장 안되있을 시 할 수 있는 것 없음)
    • 직접 작성한 스크립트 사용(소스와 유저가 남긴 로그 없을 시 할 수 있는 것 없음)
  • Fiddler : 웹 디버그 툴
  • 방화벽 분석은 해커 IP, Port와 접속 시간만 알 수 있음

    • 웹 방화벽(WAF, Web Application Firewall)은 http(s) 패킷만 로깅
    • 알 수 있는 정보가 별로 없다.
  • IDS/IPS (L4 이상 주로 L7)

    • 모든 프로토콜(TCP/IP) 패킷 데이터 확인(웹 방화벽 로깅의 상위 호환)
    • IDS는 차단하지 않기 때문에 강경한 정책 적용 가능
    • IPS는 차단 시 가용성에 문제
    • 최근 AI 도입 추세
  • 로깅은 룰 위반 시에만 일어나기 때문에 룰 우회 시 로그 안 생김
  • UTM(Unified Threat Management) : 통합위협관리
  • http 대신 https 사용 시 공격이 성공하는 경우

    • IPS가 고객으로부터 SSL 복호화 키를 제공받지 못한 경우(보안 정책을 우회)
    • SSL 복호화 키를 받을 수도 있고, 키 제공을 꺼리는 고객도 있다.
  • 보안 업체는 IDS/IPS 룰셋에 많은 자원(인력)을 투자함

    • 고객 요구 사항에 맞춰(발생하는 공격에 대응하여 지속적인) 룰셋 추가/수정
    • 룰 셋을 만드는 것이 업체의 실력의 척도
  • 모든 사이버 공격들이 사이버킬체인 7단계의 모든 단계를 수행하지는 않음
  • '/bin/sh' 문자열의 정규표현식 탐지 시 사용자가 예를들어 '/bin/sh' 문자열 포함한 게시글을 작성하면 오탐이 발생

    • 쉘 코드 아니어도 탐지하기 때문
  • AI의 IDS/IPS의 적용은 상업적 목적이 크다.

    • 사업상 새로운 제품 개발 필요성
  • Supervised AI IDS/IPS의 경우 데이터 라벨링과 데이터 확보가 중요함

    • 자체 또는 원격 보안 관제 시스템의 로그를 보고 공격인지 구분
    • ids에 남은 로그는 ids/ips에 남은 로그 전제에 기반하기 때문에 전제에 부합해야 로깅됨
    • IDS와 AI IPS의 제작 업체가 다른 경우 AI의 학습이 자사 IDS 로그 기반이기 때문에 성능이 안좋다.
    • 결론적으로 AI가 잘 적용 안되고 탐지가 잘 안된다.
    • 업체에서 정오탐 판별만 AI를 활용하는 추세
  • Unsupervised AI IDS/IPS

    • 세션 수(어느 소스에서 목적지로 몇개의 패킷이 전달됬는지, 패킷 크기 등)를 탐지
    • Anomaly Detection : 공격 패턴을 학습하지 않고, 정상적 상황을 학습하여 이상한 상태를 탐지
    • 장비 구입 바로 사용하지 못하고 2~3달 간정상 상태를 학습하고서 사용할 수 있음(고객에 맞춰 학습해야되기 때문)
  • BMT(Benchmark Test)